
##TIMEROC
##绘制roc
#引用包
library(survival)
library(survminer)
library(timeROC)
ggsci::pal_npg("nrc")(9)
setwd("E:\\1.Ovarian_Treg\\1.picture\\7.ROC")
#定义绘制ROC曲线函数
bioROC=function(inputFile=null, rocFile=null){
  #读取输入文件
  rt=read.table(inputFile, header=T, sep="\t", check.names=F)
  #ROC曲线
  ROC_rt=timeROC(T=rt$futime,delta=rt$fustat,
                 marker=rt$riskScore,cause=1,
                 weighting='aalen',
                 times=c(1,3,5,7,10),ROC=TRUE)
  pdf(file=rocFile,width=4,height=4)
  plot(ROC_rt,time=1,col='#E64B35FF',title=FALSE,lwd=5)
  plot(ROC_rt,time=3,col='#4DBBD5FF',add=TRUE,title=FALSE,lwd=5)
  plot(ROC_rt,time=5,col='#00A087FF',add=TRUE,title=FALSE,lwd=5)
  plot(ROC_rt,time=7,col='#3C5488FF',add=TRUE,title=FALSE,lwd=5)
  plot(ROC_rt,time=10,col='#F39B7FFF',add=TRUE,title=FALSE,lwd=5)
  
  legend('bottomright',
         c(paste0('AUC at 1 years: ',sprintf("%.03f",ROC_rt$AUC[1])),
           paste0('AUC at 3 years: ',sprintf("%.03f",ROC_rt$AUC[2])),
           paste0('AUC at 5 years: ',sprintf("%.03f",ROC_rt$AUC[3])),
           paste0('AUC at 7 years: ',sprintf("%.03f",ROC_rt$AUC[4])),
           paste0('AUC at 10 years: ',sprintf("%.03f",ROC_rt$AUC[5]))
         ),
         col=ggsci::pal_npg("nrc")(9)[1:5],
         lwd=2,bty = 'n')
  dev.off()
}
list.files()
bioROC(inputFile="rs_tcga.txt", rocFile="tcga.roc.pdf")
